Reducing controller updates in a control loop

ABSTRACT

A control technique controls a process in a manner that reduces the number of controller changes provided to a controlled device, and so reduces the power consumption of the controlled device along with the loading of a process control communications network disposed between the controller and the controlled device. This technique is very useful in a control system having wirelessly connected field devices, such as sensors and valves which, in many cases, operate off of battery power. Moreover, the control technique is useful in implementing a control system in which control signals are subject to intermittent, non-synchronized or significantly delayed communications and/or in a control system that receives intermittent, non-synchronized or significantly delayed process variable measurements to be used as feedback signals in the performance of closed-loop control.

RELATED APPLICATIONS

This application is a regular-filed application claiming priority toU.S. Provisional Patent Application Ser. No. 61/968,159 entitled“Reducing Controller Updates in a Control Loop,” filed Mar. 20, 2014,the entire disclosure of which is hereby expressly incorporated hereinby reference. This application is also a continuation-in-part of U.S.patent application Ser. No. 13/351,802 entitled “Compensating forSetpoint Changes in a Non-Periodically Updated Controller,” filed Jan.17, 2012, the entire disclosure of which is hereby expresslyincorporated herein by reference. This application is also related toU.S. patent application Ser. No. 11/850,810 entitled “WirelessCommunication of Process Measurements,” filed Sep. 6, 2007, which is acontinuation-in-part of U.S. patent application Ser. No. 11/499,013entitled “Process Control With Unreliable Communications,” filed Aug. 4,2006 and issued as U.S. Pat. No. 7,620,460, which is acontinuation-in-part of U.S. patent application Ser. No. 11/258,676,entitled “Non-periodic Control Communications in Wireless and OtherProcess Control Systems,” filed Oct. 25, 2005 and issued as U.S. Pat.No. 7,587,252, the entire disclosures of each of which are herebyexpressly incorporated by reference herein.

TECHNICAL FIELD

This patent relates to implementing control in a control loop havingslow, intermittent or non-periodic communications and, moreparticularly, to a control routine that uses non-periodic signalingwithin a control loop in a manner that reduces the number of controllerupdates provided to a controlled device.

DESCRIPTION OF THE RELATED ART

Process control systems, such as distributed or scalable process controlsystems like those used in chemical, petroleum or other processes,typically include one or more process controllers communicativelycoupled to each other, to at least one host or operator workstation andto one or more field devices via analog, digital or combinedanalog/digital buses. The field devices, which may be, for example,valves, valve positioners, switches and transmitters (e.g., temperature,pressure and flow rate sensors), perform functions within the processsuch as opening or closing valves and measuring process parameters. Theprocess controller receives signals indicative of process measurementsmade by the field devices and/or other information pertaining to thefield devices, and uses this information to implement a control routineto generate control signals which are sent over the lines or buses tothe field devices to control the operation of the process. Informationfrom the field devices and the controller is typically made available toone or more applications executed by the operator workstation to enablean operator to perform any desired function with respect to the process,such as viewing the current state of the process, modifying theoperation of the process, etc.

Some process control systems, such as the DeltaV™ system sold by EmersonProcess Management, use function blocks or groups of function blocksreferred to as modules located in the controller or in different fielddevices to perform control and/or monitoring operations. In these cases,the controller or other device is capable of including and executing oneor more function blocks or modules, each of which receives inputs fromand/or provides outputs to other function blocks (either within the samedevice or within different devices), and performs some processoperation, such as measuring or detecting a process parameter,monitoring a device, controlling a device, or performing a controloperation, such as the implementation of aproportional-integral-derivative (PID) control routine. The differentfunction blocks and modules within a process control system aregenerally configured to communicate with each other (e.g., over a bus)to form one or more process control loops.

Process controllers are typically programmed to execute a differentalgorithm, sub-routine or control loop (which are all control routines)for each of a number of different loops defined for, or contained withina process, such as flow control loops, temperature control loops,pressure control loops, etc. Generally speaking, each such control loopincludes one or more input blocks, such as an analog input (AI) functionblock, one or more control blocks, such as aproportional-integral-derivative (PID) or a fuzzy logic control functionblock, and an output block, such as an analog output (AO) functionblock. Control routines, and the function blocks that implement suchroutines, have been configured in accordance with a number of controltechniques, including PID control, fuzzy logic control, and model-basedtechniques such as a Smith Predictor or Model Predictive Control (MPC).

To support the execution of the control routines, a typical industrialor process plant has a centralized control room communicativelyconnected with one or more process controllers and process I/Osubsystems, which, in turn, are connected to one or more field devices.Traditionally, analog field devices have been connected to thecontrollers by two-wire or four-wire current loops for both signaltransmission and the supply of power. An analog field device, such as asensor or a transmitter that transmits a signal to the controllermodulates the current running through the current loop, such that thecurrent is proportional to the sensed process variable. On the otherhand, analog field devices that perform an action under control of thecontroller are controlled by the magnitude of the current through theloop. Many digital or combined analog and digital field devices receiveor transmit control or measurement signals via a digital communicationnetwork or a combined analog and digital communication network.

With the increased amount of data transfer, one particularly importantaspect of process control system design involves the manner in whichfield devices are communicatively coupled to each other, to controllersand to other systems or devices within a process control system or aprocess plant. In general, the various communication channels, links andpaths that enable the field devices to function within the processcontrol system are commonly collectively referred to as an input/output(I/O) communication network.

The communication network topology and physical connections or pathsused to implement an I/O communication network can have a substantialimpact on the robustness or integrity of field device communications,particularly when the network is subjected to adverse environmentalfactors or harsh conditions. These factors and conditions can compromisethe integrity of communications between one or more field devices,controllers, etc. The communications between the controllers and thefield devices are especially sensitive to any such disruptions, inasmuchas the monitoring applications or control routines typically requireperiodic updates of the process variables for each iteration of theroutine. Compromised control communications could therefore result inreduced process control system efficiency and/or profitability, andexcessive wear or damage to equipment, as well as any number ofpotentially harmful failures.

In the interest of assuring robust communications, I/O communicationnetworks used in process control systems have historically beenhardwired. Unfortunately, hardwired networks introduce a number ofcomplexities, challenges and limitations. For example, the quality ofhardwired networks may degrade over time. Moreover, hardwired I/Ocommunication networks are typically expensive to install, particularlyin cases where the I/O communication network is associated with a largeindustrial plant or facility distributed over a large area, for example,an oil refinery or chemical plant consuming several acres of land. Therequisite long wiring runs typically involve substantial amounts oflabor, material and expense, and may introduce signal degradationarising from wiring impedances and electromagnetic interference. Forthese and other reasons, hardwired I/O communication networks aregenerally difficult to reconfigure, modify or update.

A more recent trend has been to use wireless I/O communication networksto alleviate some of the difficulties associated with hardwired I/Onetworks. For example, U.S. Patent Application Publication No.2003/0043052, entitled “Apparatus for Providing Redundant WirelessAccess to Field Devices in a Distributed Control System,” the entiredisclosure of which is hereby expressly incorporated by referenceherein, discloses a system utilizing wireless communications to augmentor supplement the use of hardwired communications.

However, reliance on wireless communications for control-relatedtransmissions has traditionally been limited due to, among other things,reliability concerns. As described above, modern monitoring applicationsand process control applications rely on reliable data communicationbetween the controller and the field devices to achieve optimum controlperformance. Moreover, typical controllers execute control algorithms atfast rates to quickly correct unwanted deviations in the process.Undesirable environmental factors or other adverse conditions may createintermittent interferences that impede or prevent the fast or periodiccommunications necessary to support such execution of monitoring andcontrol algorithms. Fortunately, wireless networks have become much morerobust over the last decade, enabling the reliable use of wirelesscommunications in some types of process control systems.

However, power consumption is still a complicating factor when usingwireless communications in process control applications. Becausewireless field devices are physically disconnected from the I/O network,the field devices typically need to provide their own power source.Accordingly, field devices may be battery powered, draw solar power, orpilfer ambient energy such as vibration, heat, pressure, etc. For thesedevices, energy consumed for data transmission may constitute asignificant portion of total energy consumption. In fact, more power maybe consumed during the process of establishing and maintaining awireless communication connection than during other important operationsperformed by the field device, such as the steps taken to sense ordetect the process variable being measured. To reduce power consumptionin wireless process control systems and thus prolong battery life, ithas been suggested to implement a wireless process control system inwhich the field devices, such as sensors, communicate with thecontroller in a non-periodic manner. In one case, the field devices maycommunicate with or send process variable measurements to the controlleronly when a significant change in a process variable has been detected,leading to non- periodic communications with the controller.

One control technique that has been developed to handle non-periodicprocess variable measurement updates uses a control system that providesand maintains an indication of an expected process response to thecontrol signal produced by the controller between the infrequent,non-periodic measurement updates. An expected process response may bedeveloped by a mathematical model that calculates the expected processresponse to a control signal for a given measurement update. One exampleof this technique is described in U.S. Pat. No. 7,587,252, entitled,“Non-Periodic Control Communications in Wireless and Other ProcessControl Systems,” the entire disclosure of which is hereby expresslyincorporated by reference herein. In particular, this patent discloses acontrol system having a filter that generates an indication of anexpected process response to a control signal upon the receipt of anon-periodic process variable measurement update, and that maintains thegenerated indication of the expected process response until the arrivalof the next non-periodic process variable measurement update. As anotherexample, U.S. Pat. No. 7,620,460, entitled “Process Control WithUnreliable Communications,” the entire disclosure of which is herebyexpressly incorporated by reference herein, discloses a system thatincludes a filter that provides an indication of an expected response tothe control signal but further modifies the filter to incorporate ameasurement of the time that has elapsed since a last non-periodicmeasurement update to generate a more accurate indication of theexpected process response.

However, over the last five years, manufacturers for fieldinstrumentation have introduced a wide variety of WirelessHART®transmitters. Initially these transmitters were only used to monitor theprocess. However, with the introduction of the techniques describedabove, it is possible to use wireless measurements in closed loopcontrol applications. Based on the broad acceptance of wirelesstransmitters, many manufacturers are in the process of developing andintroducing wireless on/off and throttling valves.

However, there are a couple of technical challenges that must beaddressed to be able to use such wireless valves in closed loop control.In particular, there is typically only a limited amount of poweravailable at the wireless valve, and it is anticipated that much of theavailable power will be required to make changes in the target valveposition, e.g. to drive the valve to its target position in response tothe receipt of a control signal. Typical control techniques, however,attempt to send many control signals to the devices being controlled soas to assure robust control performance. However, the high number ofcontroller based moves implemented by these techniques may quickly useup the battery resources at the controlled device. It may be desirable,therefore, to reduce, if possible, the number of valve movements thatare made in the course of closed loop control in response to, forexample, a change in a setpoint, a process disturbance, etc.

Moreover, in many cases, the control system actions cannot besynchronized with gateway communications that must occur to providecommunications between a controller and a wireless valve or otheractuator disposed in a wireless communication network. For example, thecurrent design of wireless gateways, e.g., the WirelessHART® gateway,may not immediately act upon a request to communicate a change in valveposition to a valve actuator, and thus the valve or actuator may receivea control signal at some significant time after generation of thatcontrol signal at the controller. Moreover, the controller may onlyreceive an acknowledgement from the valve or actuator at some stillhigher significant time after a change in valve position has been sentby the controller. Thus, in this case, the wireless communication of thetarget valve position (e.g., the control signal) and the valve responseintroduces a significant variable delay into the control loop, and thisdelay that impacts PID control, making robust control of the controlledvariable more difficult.

SUMMARY

A control technique that may be used in, for example, a PID controlloop, significantly reduces the number of communications from thecontroller (e.g., a PID controller) to a wireless valve or other controlelement within a process plant, while still providing robust control ofa controlled process variable. As such, the wireless valve or othercontrol element may use less power because the valve must react to fewerchanges in the target valve position, while still providing acceptableand robust control. Moreover, using this control technique in a plant inwhich the controller is communicatively connected to a controlled devicevia a gateway into a wireless network will reduce gateway communicationsloading, as this technique can result in fewer communications to thewireless valve or other controlled element. This control technique maybe used in conjunction with other intermittent or non-periodic controlmethods, and so may perform control using one or both of a wirelesstransmitter and a wireless valve (or other wireless control element) ina control loop. Moreover, this technique can be used to perform controlin a wired or other periodic control system to reduce unnecessary orineffective valve movements, such as valve position hunting which istypically experienced in noisy control systems, such as those in whichfeedback measurements include noise or in which noise results inrelatively random process disturbances.

In addition, a new control signal command may be used to send controlsignals via a wireless or other intermittent, non-periodic orasynchronous communications network so as to aid in the controlperformance of the control technique described herein. The newcontroller signal may include both a target value and a time toimplement the target value. This command signal or other signal allowsan implied valve position to be calculated more accurately at thecontroller, and thus may be used to perform better or more robustcontrol in a system that experiences significant communication delays inthe process control loop communications (e.g., between a processcontroller and a controlled device such as a valve).

Generally speaking, a control loop implementing the new non-periodiccommunication technique may include a wireless, slow, non-periodic, ornon- synchronized communication connection or path between a controllerimplementing a control routine (such as a PID control routine) and acontrolled device, such as a valve or a valve actuator. The link couldbe implemented using a wireless or a wired communication infrastructure.In this case, the control technique uses a non-periodic communicationblock disposed between the controller and the controlled device, whereinthe communication block operates to minimize the number of changes madein the target position of the controlled device by reducing the numberof control signals that are sent to the controlled device.

More particularly, to minimize the power consumed by the valve actuator,the calculated PID output of the controller may be transmitted to thewireless valve only if specific criteria determined by the non-periodiccommunication block have been met. As the controller is typicallyscheduled to execute to produce a control signal much faster than theminimum period at which the target value can be communicated to thewireless controlled device, the application of these criteria willreduce the number of controller signals sent to the controlled deviceand thereby reduce controller moves implemented by the controlleddevice. However, the application of the criteria within thecommunication block still operates to assure that adequate controlperformance is achieved in the presence of the reduced number of controlsignals and the communication delays of the control signals to acontrolled device. As an example, the non-periodic communication blockmay operate to communicate a new target position to the controlleddevice (via the wireless, intermittent, non-synchronized or non-periodiccommunication path) in the following manner. First, the non-periodiccommunication block will only send a control signal if the time sincethe last communication to the wireless controlled device is equal to orgreater than the configured period of communication, and a communicationof a controlled device acknowledgement to the last change in targetposition sent to the controlled device has been received. When theseconditions are met, then the non-periodic communication block willcommunicate a new or updated control signal when either or both theabsolute value of the difference between the calculated controlleroutput and the last target value communicated to the controlled deviceexceeds a configured deadband (threshold) value and/or when the timesince the last communication to the controlled device exceeds aconfigured default reporting time.

The target position communicated to the wireless controlled device isnormally the calculated output of the controller, such as a PIDcontroller. However, as an option, the magnitude of change in the targetposition may be limited to the last communicated value plus or minus amaximum change value, when it is determined that the absolute value ofthe change in the controller output since the last communicated targetexceeds the configured maximum change value.

When minimal delay is introduced by communications between a wirelesscontrolled device and a controller, then a feedback signal in the formof a position of a valve, as communicated by the wireless controlleddevice (e.g., an actuator/valve) to the controller, may be used in thecontroller positive feedback network to create, for example, a resetcontribution of a PID control signal. However, if communications withthe wireless controlled device are lost or are not updated in a periodicmanner, then the feedback of the last target position of the controlleddevice (e.g., the target position that a valve actuator is working toachieve) communicated by the wireless valve may be used to determine thereset contribution of the controller operation. To assist the feedbackloop of the control system in determining the valve position for use incalculating the reset contribution, the control system (or wirelessgateway) may provide a control signal that specifies a control value(e.g., a position to which a valve should move) and a time at which thevalve should make such a movement. Such a control signal is useful insituations in which the time it takes for the control signal to reachthe controlled device is significant (e.g., caused by a wireless gatewayor other slow or non-synchronized communication link). The timespecified within the control signal may specify an absolute time or anoffset time from, for example, the timestamp of the control signal. Ifthe offset time is configured to be greater than the time that it takesthe control signal to reach the controlled device from the controller,then the controlled device will receive the control signal and implementthe change at the specified time. In this case, the controller canassume that the control signal was received and implemented by thecontrolled device at the specified time and so can update the valveposition in the feedback loop of the controller at that time, withoutneeding to receive a feedback signal from the controlled deviceindicting that the controller move was implemented. This operation mayresult in better control performance in a PID controller.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a typical, periodically updated, hard-wiredprocess control system.

FIG. 2 is graph illustrating a process output response to a processinput for an example periodically updated, hard-wired process controlsystem.

FIG. 3 is a block diagram illustrating an example of a process controlsystem having a controller that transmits control signals to acontrolled device in a non-periodic or wireless manner via a wirelessgateway device, and/or that receives non-periodic, non-synchronized orsignificantly delayed feedback signals via a wireless network.

FIG. 4 is a block diagram of an example controller that performs controlusing a non-periodic control signal communications module disposedbetween a controller and a controlled device, and in whichcommunications between the controller and the controlled device occurover a wireless communication network, wherein the communications moduleoperates to reduce the number of controller signals sent to thecontrolled device.

FIG. 5 is a block diagram of a process control system that implements anon-periodic control communication technique to reduce the number ofcontrol signals sent to a controlled device via a wireless or otherintermittent, slow or non-synchronous communication network and thatalso receives feedback signals via a wireless, slow, or intermittentcommunication path.

FIG. 6 is block diagram of a process control system that implements anon-periodic control communication technique that reduces the number ofcontrol signals sent to a controlled device in a communication networkthat uses wired or synchronous communications.

FIG. 7 is a block diagram illustrating a process of using write requestsand write response signals to effectuate the non-periodic controlcommunications of FIGS. 4-6.

FIG. 8 illustrates a timing diagram of a set of signals used toeffectuate communication of a control signal from a controller to acontrolled device using the control communication techniques describedherein, including a control signal specifying a time-to-apply a controlmove.

FIGS. 9 and 10 illustrate graphs of various parameters associated withtwo process control simulations implemented using the controlcommunication techniques described herein and of those same parametersin similar control systems that use typical wired or periodic controlcommunications.

DETAILED DESCRIPTION

A control technique enables a controller to communicate or send controlsignals to a controlled device of a process, such as a valve actuator,in a non-periodic, wireless, slow, significantly delayed or otherwisenon-synchronous manner, to reduce the number of actuator moveseffectuated by the actuator while still providing robust controlperformance. As such, the control technique implements a controlmethodology that drives an actuator or other controlled device in amanner that reduces the power consumption of the controlled device,reduces frequent changes of the controlled device that result in a“hunting” phenomena that frequently occurs in control loops thatexperience significant noise or process disturbances, and reducescommunication loading in communication devices within a wireless networkthat is used to implement a control loop, such as in wireless gatewaydevices.

In particular, a control communications block within a control loopoperates to send newly created control signals generated by a controllerin a non-periodic manner, based on a number of configuration factors,such as a communication deadband, a control signal change threshold, anda communication period. Moreover, to accommodate the control of a devicein the presence of a delayed control signal, a continuously updatedfilter within the controller generates an indication of an expectedprocess response (also called a feedback contribution) during eachcontrol routine iteration of the controller based on an actual or animplied position of the controlled device. This feedback contribution isused in the controller to assure proper control in the presence ofsignificant delay between the controller generating a control signal andthe controlled device receiving and acting upon the control signal. Insome cases, the continuously updated filter may use, in part, apreviously generated indication of an expected response from the lastcontrol routine iteration and the control routine execution period togenerate the indication of an expected response during each controlroutine iteration.

In addition, when process measurement feedback signals are provided tothe controller in an intermittent, non-periodic or a delayed manner, acurrent output of the continuously updated filter may be used as afeedback contribution, such as an integral (also known as reset) and/ora derivative (also known as rate) contribution within the controller,only when a new measurement indication is received. Generally speaking,in this case, an integral output switch maintains the expected processresponse that was generated by the continuously updated filter at thetime that the last measurement value update was received by thecontroller as the integral or reset contribution to the control signal.When a new measurement value update is available, the integral outputswitch clamps onto a new indication of the expected process responsegenerated by the continuously updated filter (based on an indication ofthe new measurement value update), and provides the new expected processresponse as the integral or rate contribution of the control signal. Asa result, the controller uses the continuously updated filter todetermine a new expected response of the process during each controlleriteration, wherein each new expected process response reflects theimpact of changes that were made in the time between measurement updatesand so affects the controller output during development of the controlsignal, even though the integral or reset component of control signalproduced by the controller is changed only when a new feedback value isavailable at the controller.

A process control system 10 illustrated in FIG. 1, that may be used toimplement the control methodology described herein, includes a processcontroller 11 connected via a communication line or bus 9 to a datahistorian 12 and to one or more host workstations or computers 13 (whichmay be any type of personal computers, workstations, etc.), each havinga display screen 14. The communication network 9 may be, for example, aEthernet network, a WiFi network or any other wired or wireless network.The controller 11 is also connected to field devices 15-22 viainput/output (I/O) cards 26 and 28 and is illustrated as beingcommunicatively connected to the field devices 15-22 using one or morehardwired communication networks and communication schemes. The datahistorian 12 may be any desired type of data collection unit having anydesired type of memory and any desired or known software, hardware orfirmware for storing data.

Generally, the field devices 15-22 may be any types of devices, such assensors, valves, transmitters, positioners, etc., while the I/O cards 26and 28 may be any types of I/O devices conforming to any desiredcommunication or controller protocol. The controller 11 includes aprocessor 23 that implements or oversees one or more process controlroutines (or any module, block, or sub-routine thereof) stored in amemory 24. Generally speaking, the controller 11 communicates with thedevices 15-22, the host computers 13 and the data historian 12 tocontrol a process in any desired manner. Moreover, the controller 11implements a control strategy or scheme using what are commonly referredto as function blocks, wherein each function block is an object or otherpart (e.g., a subroutine) of an overall control routine that operates inconjunction with other function blocks (via communications called links)to implement process control loops within the process control system 10.Function blocks typically perform one of an input function, such as thatassociated with a transmitter, a sensor or other process parametermeasurement device, a control function, such as that associated with acontrol routine that performs PID, fuzzy logic, etc. control, or anoutput function which controls the operation of some device, such as anactuator or a valve, to perform some physical function within theprocess control system 10. Of course, hybrid and other types of functionblocks exist and may be utilized herein. The function blocks may bestored in and executed by the controller 11 or other devices asdescribed below.

As illustrated by the exploded block 30 of FIG. 1, the controller 11 mayinclude a number of single-loop control routines, illustrated as controlroutines 32 and 34, and, if desired, may implement one or more advancedcontrol loops, illustrated as a control loop 36. Each such control loopis typically referred to as a control module. The single-loop controlroutines 32 and 34 are illustrated as performing single loop controlusing a single-input/single-output fuzzy logic control block and asingle-input/single- output PID control block, respectively, connectedto appropriate analog input (AI) and analog output (AO) function blocks,which may be associated with process control devices such as valves,with measurement devices such as temperature and pressure transmittersor sensors, or with any other device within the process control system10. The advanced control loop 36 is illustrated as including an advancedcontrol block 38 having inputs communicatively connected to one or moreAI function blocks and outputs communicatively connected to one or moreAO function blocks, although the inputs and outputs of the advancedcontrol block 38 may be connected to any other desired function blocksor control elements to receive other types of inputs and to provideother types of control outputs. The advanced control block 38 mayimplement any type of multiple- input, multiple-output control scheme,and may constitute or include a model predictive control (MPC) block, aneural network modeling or control block, a multi-variable fuzzy logiccontrol block, a real-time-optimizer block, etc. It will be understoodthat the function blocks illustrated in FIG. 1, including the advancedcontrol block 38, can be executed by the stand-alone controller 11 or,alternatively, can be located in and executed by any other processingdevice or control element of the process control system, such as one ofthe workstations 13 or one of the field devices 19-22. As an example,the field devices 21 and 22, which may be a transmitter and a valve,respectively, may execute control elements for implementing a controlroutine and, as such, may include processing and other components forexecuting parts of the control routine, such as one or more functionblocks. More specifically, the field device 21 may have a memory 39A forstoring logic and data associated with an analog input block, while thefield device 22 may include an actuator having a memory 39B for storinglogic and data associated with a PID or other control block incommunication with an analog output (AO) block, as illustrated in FIG.1.

The graph of FIG. 2 generally illustrates a process output developed inresponse to a process input for a process control system based on theimplementation of one or more of the control loops 32, 34 and 36 (and/orany control loop incorporating the function blocks residing in the fielddevices 21 and 22 or other devices). The control routine beingimplemented generally executes in a periodic manner over a number ofcontroller iterations with the times of the control routine executionbeing indicated in FIG. 2 along the time axis by the thick arrows 40. Ina conventional case, each control routine iteration 40 is supported byan updated process measurement indicated by the thin arrows 42 providedby, for instance, a transmitter or other field device. As illustrated inFIG. 2, there are typically multiple periodic process measurements 42made and received by the control routine between each of the periodiccontrol routine execution times 40. To avoid the restrictions associatedwith synchronizing the measurement value with control execution, manyknown process control systems (or control loops) are designed to over-sample the process variable measurement by a factor of 2-10 times. Suchover-sampling helps to ensure that the process variable measurement iscurrent for use in the control scheme during each control routineexecution or iteration. Also, to minimize control variation,conventional designs specify that feedback based control should beexecuted 4-10 times faster than the process response time. Stillfurther, in conventional designs, to assure best control performance,the control signal developed at the output of the controller during eachcontroller execution period is sent to the controlled device to be actedupon or to effect the controlled device operation. The process responsetime is depicted in a process output response curve 43 of the graph ofFIG. 2 as being the time associated with a process time constant (τ)(e.g., 63% of the process variable change) plus a process delay ordeadtime (T_(D)) after an implementation of a step change 44 in aprocess input (shown in the lower line 45 of FIG. 2). In any event, tosatisfy these conventional design requirements, the process measurementvalue updates (indicated by the arrows 42 of FIG. 2) have been sampledand provided to the controller at a much faster rate than the controlroutine execution rate (indicated by the arrows 40 of FIG. 2), which inturn is much faster or higher than the process response time.

However, in some control system configurations, such as in ones in whicha controller sends control signals or receives process variablemeasurements wirelessly from one or more field devices, it may not bepossible to send a control signal to the controlled device in a mannerthat assures that each output of the controller will reach thecontrolled device in a synchronous manner or with only minimal timedelay between the sending of the control signal and the receipt of thatsignal at the controlled device. Moreover, obtaining frequent andperiodic measurement samples from the process in these types of systemsmay not be practical or even possible. In particular, in these cases,the controller may only be able to receive non-periodic process variablemeasurements, and/or the time between the non-periodic or even periodicprocess variable measurements may be greater than the control routineexecution rate (indicated by the arrows 40 of FIG. 2).

FIG. 3 depicts an exemplary partially wireless process control system 10that may exhibit the problems discussed above, and which thus may not beable to perform acceptable or desired control using the typical controltechniques described with respect to FIG. 2. However, a new controltechnique described herein with respect to FIGS. 4-10 may be implementedin the plant configuration of FIG. 3 to perform control in a manner thatminimizes the control movements of controlled devices while performingcontrol in the presence of non-periodic, wireless and/or significantlydelayed communications of process control signals between a controllerand a controlled device and/or of process variable measurements betweensensors or transmitters and a controller. In particular, the controlsystem 10 of FIG. 3 is similar in nature to the control system 10 ofFIG. 1, with like elements being numbered the same. However, the controlsystem 10 of FIG. 3 includes a number of field devices 60-70 which arewirelessly communicatively coupled to one another within a wirelessnetwork 72, such as a WirelessHART® communication network, and which arecoupled to the controller 11 via a gateway device 73. As illustrated inFIG. 3, the wirelessly connected field devices within the network 72 areconnected to or include antennas 75 that cooperate with each other andwith an antenna 76 (which is coupled to the gateway device 73) tocommunicate wirelessly within the network 72. In one case, some of thefield devices, illustrated as the devices 61-64, are connected viahardwired lines to a wireless gateway or conversion device 76, whichperforms communication within the wireless network 72 for those devices.Of course, others of the devices in the wireless network 72 may bewireless devices and may each have their own wireless communicationmodules for performing wireless communications within the network 72.Moreover, the field devices 60-70 may be any types of field devicesincluding, for example, transmitters, actuators (such as valveactuators), valves, etc.

As will be understood, each of the transmitters 60-64 and 66-69 of FIG.3 may transmit a signal indicative of a respective process variable(e.g., a flow, a pressure, a temperature or a level signal) to thecontroller 11 via the wireless communication network 72, the gatewaydevice 73, and the network 9 for use in one or more control loops orroutines implemented in the controller 11. Other wireless devices,referred to as controlled devices, such as the valves or valve actuators65 and 70 illustrated in FIG. 3, may receive process control signalsfrom the controller 11 wirelessly or partially wirelessly (e.g., via thenetwork 9, the gateway 73 and the wireless network 72). Moreover, thesedevices may be configured to transmit other signals (e.g., signalsindicative of any other process parameter such as the current positionor state of the device, acknowledgement signals, etc.) to the controller11 and or other devices in the plant 10 via the wireless network 72.Generally speaking, as illustrated in FIG. 3, the controller 11 includesa communications stack 80 that executes on a processor 23 to process theincoming signals, a module or a routine 82 that executes on theprocessor 23 to detect when an incoming signal includes a measurementupdate or to detect other signals from the devices within or associatedwith a control loop, and one or more control modules 84 which execute onthe processor 23 to perform control based on the measurement updates.The detection routine 82 may generate a flag or other signal to denotethat data being provided via the communications stack 80 includes a newprocess variable measurement or other type of update. The new data andthe update flag may then be provided to one or more of the controlmodules 84 (which may be function blocks) which are then executed by thecontroller 11 at a predetermined periodic execution rate, as describedin further detail below. Alternatively, or in addition, the new data andthe update flags may be provided to one or more monitoring modules orapplications executed in the controller 11 or elsewhere in the controlsystem 10.

Thus, as described above, the process control system 10 of FIG. 3generally uses the wireless transmission of control signals and of datameasured, sensed by or computed by the transmitters 60-64 and 66-69 orother control elements, such as the field devices 65 and 70, to performcontrol. As an example, in the control system 10 of FIG. 3, new controlsignals from the controller 11 to a controlled device, such as one ofthe valves 65 or 70, are transmitted to that device via the gatewaydevice 73 and the wireless network 72. Moreover, in some cases, the newprocess variable measurements or other signal values used in thefeedback calculations of the controller 11 may be transmitted to thecontroller 11 via the wireless network 72 by the devices 60-64 and 66-69on a non-periodic, intermittent or slow basis, such as only when certainconditions are satisfied. For example, a new process variablemeasurement value may be sent to the controller 11 when the processvariable value changes by a predetermined amount with respect to thelast process variable measurement value sent by the device to thecontroller 11. Of course, other manners of determining when to sendprocess variable measurement values in a non-periodic manner may beimplemented as well or instead.

In any event, the presence of the wireless communication network 72and/or the use of the gateway device 73 within the communication pathbetween the controller 11 (which performs control calculations) and thecontrolled device (e.g., a valve or actuator device) which receivescontrol signals, and between the sensors (which measure controlledprocess variables) and the controller 11 (which uses the sensor signalsin a feedback loop of the control calculations) may make thecommunications in the control loop asynchronous, non-periodic and/orexperience significant delays during communications. For example,typical wireless gateways into a WirelessHART® network may delay controlcommunications by 3-6 seconds, making for high speed synchronous controldifficult when using these networks. Such delays may also occur whentransmitting signals from a sensor or transmitter device within awireless communications network to a controller outside of that network.

Thus, the existence of the wireless communications between thecontroller 11 and the devices within the wireless network 72 of FIG. 3generally results in asynchronous, significantly delayed and/ornon-periodic communications, which in turn produces irregular orotherwise less frequent data transmissions between the controller 11 andthe field devices 60-64 and 66-69 and/or vice-versa. As noted above,however, the communication of a control signal to and the communicationof measurement values from the wired field devices 15-22 hastraditionally been structured to be performed in a periodic manner to,in turn, support the periodic execution of the control routine(s) withinthe controller 11. As a result, typical control routines in thecontroller 11 are generally designed for periodic updates of the processvariable measurement values used in the feedback loops of the controller11.

To accommodate for non-periodic or otherwise significantly delayedcontrol and measurement signals within a control loop introduced by, forexample, wireless communication hardware disposed between the controller11 and at least some of the field devices, the control and monitoringroutine(s) of the controller 11 may be restructured or modified asdescribed below to enable the process control system 10 to functionproperly when using non-periodic or other intermittent or significantlydelayed communication signals, and especially when these signaltransmissions occur less frequently than the execution rate (e.g., theperiodic execution rate) of the controller 11.

An exemplary control scheme or control system 400 configured to operateusing non-periodic control-related communications is illustrated in moredetail in FIG. 4, which schematically illustrates a process controller100 coupled to control a process 101. More particularly the controller100 is coupled to a wireless actuator 102 of the process 101 via awireless communication link 103 (illustrated with a dashed line in FIG.4). In this case, the actuator 102 is a controlled device and may be anactuator for a valve, for example, which controls fluid flow within theprocess 101. The control scheme implemented by the controller 100 (whichmay be the controller 11 of FIGS. 1 and 3 or a control element of afield device, e.g., one of the wireless field devices of FIG. 3, etc.)generally includes the functionality of the communications stack 80, theupdate detection module 82 and one or more of the control modules 84illustrated and described in connection with FIG. 3.

In the exemplary system of FIG. 4, the controller 100 receives asetpoint signal from, for example, one of the workstations 13 (FIGS. 1and 3) or from any other source within or in communication with theprocess control system 10, and operates to generate one or more controlsignals 105 (or controller moves) which are provided from an output ofthe controller 100 to the wireless actuator 102 via the wirelesscommunication link 103. Besides receiving the control signal 105, theprocess 101 (or the actuator 102 which may be within the process 101)may be subjected to measured or unmeasured disturbances. Depending onthe type of process control application, the setpoint signal may bechanged at any time during control of the process 101, such as by auser, a tuning routine, etc. Of course, the process control signals maycontrol an actuator associated with a valve or any other type of movablecontrol element, or may control any other field device to cause a changein the operation of the process 101. The response of the process 101 tochanges in the process control signals 105 is measured or sensed by atransmitter, sensor or other field device 106, which may, for example,correspond to any one of the transmitters 60-64 or 66-69 illustrated inFIG. 3. The communication link between the transmitter 106 and thecontroller 100 is illustrated in FIG. 4 as being a hardwiredcommunication link that provides synchronous, periodic or immediatefeedback signals to the controller 100, but may be any other type ofcommunication link that provides feedback signals with little or nodelay.

In a simple embodiment, the controller 100 may implement a single/input,single/output closed-loop control routine, such as a PID controlroutine, which is one form of a PID type of control routine. As usedherein, a PID type of control routine includes any of a proportional(P), integral (I), derivative (D), proportional- integral (PI),proportional-derivative (PD), integral-derivative (ID), or proportional-integral-derivative (PID) control routine. Accordingly, the controller100 includes several standard PID controller elements, including acontrol signal generation unit having a summing block 108, whichproduces an error signal between a setpoint and a measured processvariable, a proportional gain element 110, a further summing block 112and a high-low limiter 114. The control routine 100 also includes adirect feedback path including a filter 116. The filter 116 in this casemay be coupled to the output of the high-low limiter 114 or, asillustrated in FIG. 4, may be coupled to the actuator 102, to receive animplied actuator position signal to use in calculating the reset (orother) control component of the control signal produced by processcontroller 100. Generally speaking, the output of the filter 116 isconnected to the summer 112 which adds the reset (integral) componentproduced by the filter 116 to the proportional component produced by thegain unit 110. Additionally, as illustrated in FIG. 4, the controller100 may include a derivative component calculation block 132 thatreceives the error signal from the summing block 108 in parallel withthe elements dedicated to the calculation of the proportional andintegral contributions. Here, a summer 134 adds the derivative componentof the control signal to the output of the summer 112 to produce the PIDcontrol signal with proportional, derivative and integral components. Ofcourse, the summers 112 and 134 could be combined into a single unit ifdesired. Moreover, while other PID configurations may be utilized (e.g.,a serial configuration), the proportional, integral and derivativecontributions are illustrated as being combined at the summing blocks112 and 134 to produce a non-limited control signal.

More specifically, during operation of the controller 100, the summingblock 108 compares the setpoint signal with the most recently receivedprocess variable measurement value provided from the transmitter 106 toproduce an error signal. The proportional gain element 110 operates onthe error signal by, for example, multiplying the error signal by aproportional gain value K_(p) to produce a proportional contribution orcomponent of the control signal. The summing block 112 then combines theoutput of the gain element 110 (i.e., the proportional contribution)with the integral or reset contribution or component of the controlsignal produced by a feedback path and, in particular by the filter 116.The summer 134 adds the derivative component produced by the block 132to produce a non-limited control signal. The limiter block 114 thenperforms high-low limiting on the output of the summer 134 to producethe control signal 105 to be used to control the process 101 and, inparticular, the actuator 102.

Moreover, as illustrated in FIG. 4, the filter 116 is coupled to receivean implied position from the actuator 102 via a wireless communicationlink (which may be the same link as the link 103 used to communicate thecontrol signal to the actuator 102). The filter 106 uses this impliedposition value to determine the reset (integral) component of thecontrol signal 105 in a manner discussed in more detail below. Generallyspeaking, when minimal delay is introduced by communications between thecontroller 100 and the wireless valve or actuator 102, then a valveposition feedback that is communicated back to the controller 100 by thewireless actuator/valve 102 (i.e., the implied position value) may beused in the positive feedback network (i.e., in the filter 116) tocreate the reset contribution of the PID controller 100. Here, ifcommunications with the wireless valve 102 are lost or are not updatedin a periodic manner, then the feedback of the last target valveposition (i.e., the target position to which the valve actuator 102 waslast known to be working to achieve) communicated by the wireless valveor actuator 102 is used as the implied position that is input to thecontinuously updated filter 116.

Importantly, as illustrated in FIG. 4, the control routine implementedby the controller 100 also includes a control communication block 135which may be used to minimize the number of changes made in the targetposition used by or provided to the actuator 102 when control isimplemented using a wireless valve or some other communication networkthat causes a significant delay in the transmission of a control signalto the controlled device. In particular, to minimize the number ofcontrol signals sent to the actuator 102 and thereby minimize the powerconsumed by the valve actuator 102, the block 135 only transmitscalculated controller outputs or control signals 105 (as produced by thecontrol routine in a periodic manner) to the wireless actuator 102 whenparticular criteria have been met. In a general sense, the use of thesecriteria reduces or minimizes the number of control signal changes thatare sent to the actuator 102 while still performing robust control ofthe process.

Generally speaking, the PID controller 100 is typically scheduled toexecute at a rate that is much faster than the maximum rate at which thetarget value of the actuator 102 is communicated to the wirelessactuator 102 using the block 135. More particularly, the block 135 willonly send a new value of the control signal 105 to the actuator 102 ifthe time since the last communication that was sent to the wirelessactuator 102 is equal to or greater than a configured period ofcommunication and the communication of the actuator acknowledgement tothe last change in target position has been received at the block 135.If desired, the configured period of communication may be less than orequal to the execution rate of the communications block 135 whichimplements communications with the controlled device, so that operationor execution of the communications block 135 is a tacit determinationthat the configured communications period has passed (i.e., that theelapsed time since sending a previous control signal to the controlleddevice is greater than a minimum time threshold). In any event, if theseconditions are met, then the block 135 will transmit a new targetposition (i.e., a new or updated control signal 105) to the actuator 102when either or both of two additional signaling criteria are met. Inparticular, if the absolute value of the difference between the newlycalculated control signal and the last control signal communicated tothe actuator 102 exceeds a configured deadband value (i.e., a threshold)and/or if the time since the last communication to the actuator 102exceeds a configured default reporting time, then the controlcommunication block 135 will communicate the newly calculated controlsignal 105 to the actuator 102. If these conditions are not met, thenthe control communication block 135 will not send the newly calculatedcontrol signal 105 to the actuator 102.

Thus, generally speaking, the routine implemented by the controlcommunications block 135 will only send a control signal at most, onceper a configured communication period (which will typically be set to begreater than or equal to the controller execution period) and only whenthe controller has received an acknowledgement that the last controlsignal sent to the actuator has been in fact received by the actuator.This initial set of conditions assures that the controller sends controlsignals no greater than a particular rate and does not send a newcontrol signal when the pervious control signal may not have beenreceived by the actuator (as determined by the actuator acknowledgementof the previously sent control signal). Moreover, if these conditionsare met (i.e., the time since the last control signal has been sent tothe actuator 102 is greater than a configured or preset time and theactuator 102 has acknowledged receipt of the last control signal), thena new control signal is sent only if the magnitude of the new controlsignal differs from the magnitude of the previously sent control signalby a predetermined threshold and/or if the time since the lastcommunication to the actuator 102 exceeds a configured default reportingtime.

The communications block 135 thus assures that new control signals aresent to the actuator 102 only when the previous control signal has beenverified to have been received at the actuator 102 and a particularminimum amount of time has passed since the last control signal has beensent (as determined by the configured period of communication), and onlyif either the magnitude of the new control signal to be sent and themagnitude of the most recently received control signal differs by athreshold amount or if the time since the sending of the last sentcontrol signal and the current time exceeds a particular threshold value(even if the difference in magnitudes of the control signals does notequal or exceed the threshold value.) This operation generally reducesthe number of control signals being sent to the actuator 102, so as toreduce the number of actuator moves required by the controller, but doesso in a manner that enables robust control within the process.

Moreover, if desired, the valve target position communicated to thewireless actuator 102 by the block 135 as part of the control signal maynormally be the calculated output of the control routine (i.e., thevalue of the most recent control signal 105). However, as an option, themagnitude of change in the target position (i.e., the magnitude of thechange in the control signal between successive control signalcommunications sent to the actuator 102) may be limited to the lastcommunicated control or target value plus or minus a maximum changevalue. Thus, when the absolute value of the change in the control signalbetween a new control signal and the last communicated control signalexceeds the configured maximum change value, the newly sent controlsignal (or target value) will be limited to a signal value having thismaximum change. In this manner, the control communication block 135 maylimit the amount of change in the control signal between successivecontrol signal communications to the actuator 102. Such a limitingaction may be desirable when the feedback or acknowledgement of the lastcommunicated control signal experiences a significant delay, to preventlarge jumps in the control signals, which may lead to poorer controlperformance.

As an advantage of this communication method, when the feedback oracknowledgement of the last communicated control value or targetposition provided by the wireless actuator 102 to the controller 100(i.e., the implied actuator position) is communicated with minimaldelay, then this value may be used in the positive feedback network(e.g., by the filter 116) to calculate the PID reset component. Thisoperation automatically compensates for any delay or variationintroduced by communications to the wireless actuator 102, and so nochanges in PID tuning are required to compensate for the delays incommunicating the target position to the valve. As a result, the PIDcontroller tuning is established strictly by the process gain anddynamics, independently of delays introduced by communications.

More particularly, using the control communication routine describedabove still enables the filter 116 to operate to produce the integral orreset contribution component of the control signal in manner thatprovides for robust control of the process while simultaneously reducingcommunications between the controller 100 and the actuator 102. Inparticular, the filter 116, which is coupled to receive an impliedactuator position (as sent from the actuator 102 via, for example, awireless communication path), produces an indication of the expectedprocess response to the control signal 105 based on the implied actuatorposition and the execution period or time of the control algorithm 100.In this case, the implied actuator position may be the most recentcontrol signal (or the target position of the most recent controlsignal) received at the actuator 102, wherein the control signalindicates the position to which the actuator 102 is to move. Uponexecution, as illustrated in FIG. 4, the filter 116 provides theexpected process response signal to the summer 112. If desired, theexpected process response to changes in the output of the summer 108, asproduced by the filter 116, may be approximated using a first ordermodel as described in more detail below. More generally, however, theexpected process response may be produced using any appropriate model ofthe process 101, and is not limited to a process model associated withdetermining an integral or reset contribution for a control signal. Forexample, controllers utilizing a process model to provide the expectedprocess response may or may not incorporate a derivative contributionsuch that the control routine 100 may implement a PID or a PI controlscheme.

Prior to discussing the operation of the filter 116 of FIG. 4 in moredetail, it is useful to note that a traditional PI controller may beimplemented using a positive feedback network to determine the integralor reset contribution. Mathematically, it can be shown that the transferfunction for a traditional PI implementation is equivalent to thestandard formulation for unconstrained control, i.e., where the outputis not limited. In particular:

$\frac{O(s)}{E(s)} = {K_{P}\left( {1 + \frac{1}{{sT}_{Reset}}} \right)}$

-   -   where K_(p)=Proportional Gain    -   T_(Reset)=Reset, seconds    -   O(s)=Control Output    -   E(s)=Control Error        One advantage of using the positive feedback path from the        actuator 102 to provide an implied actuator position, as        illustrated in FIG. 4, is that the reset contribution is        automatically prevented from winding up when the controller        output is high or low limited, i.e., by the limiter 114.

In any event, the control technique described herein enables using apositive feedback path for determining the reset contribution when thecontroller receives periodic or non-periodic updates of the processvariable, while still enabling a robust controller response in the eventof setpoint changes or feed-forward changes that occur between thereceipt of new process variable measurements, and while also limitingthe number of actuator moves during operation of the process controlloop. Specifically, to provide robust setpoint change operation, thefilter 116 is configured to calculate a new indication or value of anexpected process response during each or every execution of thecontroller 100. As a result, the output of the filter 116 is regeneratedanew during each execution cycle of the controller routine, even thoughthe input to the filter 116 (the implied position of the actuator 102)may not be updated on such a periodic basis.

Generally, the new indication of the expected process response, asproduced by the filter 116, is calculated during each controllerexecution cycle from the implied actuator position, the indication of anexpected response produced by the filter 116 produced during the last(i.e., immediately preceding) controller execution cycle, and thecontroller execution period. As a result, the filter 116 is describedherein as being continuously updated because it is executed to produce anew process response estimation during each controller execution cycle.An example equation that may be implemented by the continuously updatedfilter 116 to produce a new expected process response or filter duringeach controller execution cycle is set forth below:

$F_{N} = {F_{N - 1} + {\left( {O_{N - 1} - F_{N - 1}} \right)*\left( {1 - ^{\frac{{- \Delta}\; T}{T_{Reset}}}} \right)}}$

-   -   where F_(N)=New filter output    -   F_(N-1)=Filter output last execution    -   O_(N-1)=Implied actuator position (e.g., last control signal        received by the actuator)    -   ΔT=Controller execution period

Here, it will be noted that the new filter output F_(N) is iterativelydetermined as the most previous filter output F_(N-1) (i.e., the currentfilter output value) plus a decaying component determined as thedifference between the most recent controller output value (or targetposition) received at the actuator O_(N-) _(N-1) (the implied actuatorvalue) and the current filter output value F_(N-1) multiplied by afactor dependent on the reset time T_(Reset) and the controllerexecution period ΔT.

Using a filter that updates continuously in this manner, the controlroutine 100 is better able to determine the expected process responsewhen calculating the integral control signal component whenever a newprocess variable measurement is received, thereby being more reactive toa changes in the setpoint or other feed-forward disturbances that occurbetween the receipt of two process variable measurements. Moreparticularly, it will be noted that a change in the setpoint (withoutthe receipt of a new process measurement value) will immediately resultin a change in the error signal at the output of the summer 108 whichchanges the proportional contribution component of the control signaland thus changes the control signal. As a result, the filter 116 willimmediately begin producing a new expected response of the process tothe changed control signal and may thus update its output prior to thecontroller 100 receiving a new process measurement value measured inresponse to that change. Then, when the controller 100 receives a newprocess measurement value, and a sample of the filter output is clampedto the input of the summer 112 to be used as the integral or resetcontribution component of the control signal, the filter 116 hasiterated to an expected process response that, to some degree at least,has reacted to or has incorporated the response of the process 101 tothe change in the setpoint.

Thus, as will be understood, the control technique illustrated in FIG. 4calculates an indication of an expected process response via thecontinuously updated filter 116 (e.g. the reset contribution filter) foreach execution of the control block or routine 100. In the embodiment ofFIG. 4, the controller 100 configures the continuously updated filter116 to calculate a new indication of an expected response for eachexecution of the control block. Thus, the continuously updated filter116 continues to calculate an indication of an expected response foreach iteration of the control routine based on the implied actuatorposition (e.g., the control signal most currently received at theactuator 102) and this new indication of an expected response isdelivered to the summing block 112 during each execution cycle.

This control technique allows the continuously updated filter 116 tocontinue to model the expected process response regardless of whether anew measurement value is communicated and without needing to determinewhether the current controller output will be sent to the actuator 102.If the control output changes as a result of a setpoint change or afeed-forward action based on a measured disturbance, the continuouslyupdated filter 116 correctly reflects the expected process response bycalculating a new indication of an expected response at each controlroutine iteration based on the implied position of the actuator 102.

It should be noted that the simple PID controller configuration of FIG.4 uses the output of the filter 116 directly as the reset contributionto the control signal, and, in this case, the reset contribution of aclosed-loop control routine (e.g. the continuously updated filterequation presented above) may provide an accurate representation of theprocess response in determining whether the process exhibitssteady-state behavior. However, other processes, such as deadtimedominant processes, may require the incorporation of additionalcomponents in the controller of FIG. 4 in order to model the expectedprocess response. With regard to processes that are well represented bya first-order model, the process time constant may generally be used todetermine the reset time for the PI (or PID) controller. Morespecifically, if the reset time is set equal to the process timeconstant, the reset contribution generally cancels out the proportionalcontribution such that, over time, the control routine 100 reflects theexpected process response. In the example illustrated in FIG. 4, thereset contribution may be effected by a positive feedback network havingthe filter 116 with the same time constant as the process time constant.While other models may be utilized, the positive feedback network,filter, or model provides a convenient mechanism for determining theexpected response of a process having a known or approximated processtime constant.

FIGS. 5 and 6 illustrate some other examples of control systems that mayuse the communication control and filtering technique described abovewith respect to FIG. 4 to provide for robust control in response tosetpoint changes while also minimizing controller moves in a controlleddevice. In particular, in some applications, various differentcombinations of wired or wireless transmitters or sensors and wired orwireless controlled devices, such as valves, may be used in the controlscheme. More particularly, it may be desirable to implement the controltechnique described above to minimize controller moves in a control loopthat includes a wireless transmitter and a wired valve or actuator, in acontrol loop that includes a wired transmitter and a wireless valve oractuator (such as illustrated in FIG. 4), in a control loop thatincludes a wireless transmitter and a wireless valve or actuator, and/orin a control loop that includes a wired transmitter and a wired valve oractuator. Here, it will be understood the wireless communication pathsin the examples described herein are presumed to introduce slow,intermittent, non-synchronous, non-periodic and/or significantly delayedtransmissions between the controller and the actuator and/or between thetransmitter (sensor) and the controller, and that the same concepts orcontrol techniques described herein for these networks could be appliedto control systems that have any communication network that has one ormore of these properties, even if these communication networks orcontrol systems are not wireless in nature.

FIG. 5 illustrates an example control system 500 or control loop thatincludes both a wireless transmitter (and so a wireless feedbackcommunication path) and a wireless valve or actuator (and so a wirelesscontrol signal communication path). It will be assumed that significantdelays, lost signals, non-periodic or asynchronous communications can beintroduced by either of both of these wireless communication paths. Thecontrol system 500 illustrated in FIG. 5 is similar in nature to that ofFIG. 4, except that the controller 100 of FIG. 5 includes additionalcomponents that are needed to deal with the potential delay or loss ofcommunications, and/or the loss of synchronous or periodiccommunications within the feedback communication path between the sensor106 and the controller 100. As will be seen, this path is now indicatedwith a dotted line in FIG. 5 to indicate that this communication path iswireless, non-periodic, asynchronous, and/or exhibits significantdelays.

As illustrated in FIG. 5, the controller 100 includes standard PIDcontroller elements described above with respect to FIG. 4, including acontrol signal generation unit having a summing block 108, aproportional gain element 110, a further summing block 112, a derivativecalculation block 132, a still further summing block 134 and a high-lowlimiter 114. The control routine 100 also includes a feedback pathincluding the filter 116, but in this case additionally includes anintegral output switch that includes a selection block 118 coupled to acommunications stack 80 and the filter 116. As illustrated in FIG. 5,the filter 116 is still coupled to receive the implied actuatorposition, but now provides the output of the filter 116 to the block 118which, in turn, provides the integral or reset component of the controlsignal being generated by the controller 100 to the summing block 112.

During operation of the controller 100, the summing block 108 comparesthe setpoint signal with the most recently received process variablemeasurement value (provided from the communications stack 80 within thecontroller 100) to produce an error signal. The proportional gainelement 110 operates on the error signal by, for example, multiplyingthe error signal by a proportional gain value K_(p) to produce aproportional contribution or component of the control signal. Thesumming block 112 then combines the output of the gain element 110(i.e., the proportional contribution) with the integral or resetcontribution or component of the control signal produced by the feedbackpath (including the filter 116 and the block 118). The derivativecomponent block 132 operates on the output of the summer 108 (the errorsignal) to produce a derivative component of the control signal which isadded to the output of the summer 112 by the summer 134. The limiterblock 114 then performs high-low limiting on the output of the summer134 to produce the control signal 105, which is provided to the controlcommunication block 135. The block 135 operates in the manner describedabove with respect to FIG. 4 to determine when a new control signal 105is to be sent to the actuator 102 via the wireless link 103 (that mayexperience significant delays).

In this case, the filter 116 and the block or switch 118 within thefeedback path of the controller 100 operate to produce the integral orreset contribution component of the control signal in the followingmanner. The filter 116, which is coupled to receive the output of thelimiter 114, produces an indication of the expected process response tothe control signal 105 based on the implied actuator position and theexecution period or time of the control algorithm 100 as described abovewith respect to FIG. 4. However, in this case, the filter 116 providesthis expected process response signal to the switch or block 118. Theswitch or block 118 samples and clamps the output of the filter 116 atthe output of the switch or block 118 whenever a new process variablemeasurement value has been received at the controller 100 (as determinedby the communication stack 80) and maintains this value until the nextprocess variable measurement value is received at the communicationsstack 80. As such, the output of the switch 118 remains the output ofthe filter 116 that was produced at the time that the controller 100received the last process variable measurement update.

More particularly, the control technique illustrated in FIG. 5calculates an indication of an expected response via the continuouslyupdated filter 116 (e.g. the reset contribution filter) for eachexecution of the control block or routine 100. However, to determine ifthe output of the filter 116 should be used as an input to the summingblock 112, the communications stack 80 and, in some examples, the updatedetection module 82 (FIG. 3), process the incoming data from thetransmitter 106 to generate a new value flag for the integral outputswitch 118 when a new process variable measurement value is received.This new value flag informs the switch 118 to sample and clamp theoutput of the filter 116 for this controller iteration and provide thisvalue to the input of the summer 112.

Regardless of whether a new value flag is communicated, the continuouslyupdated filter 116 continues to calculate an indication of an expectedresponse for each iteration of the control routine. This new indicationof an expected response is delivered to the integral output switch orblock 118 each execution of the control block. Depending on the presenceof the new value flag, the integral output switch 118 switches betweenallowing the new indication of the expected response from thecontinuously updated filter 116 to pass through to the summing block 112and maintaining the signal that was previously delivered to the summingblock 112 during the last execution of the control block. Moreparticularly, when a new value flag is communicated, the integral outputswitch 118 allows the most recently calculated indication of theexpected response from the continuously updated filter 116 to pass tothe summing block 112. Conversely, if the new value flag is not present,then the integral output switch 118 resends the indication of theexpected response from the last control block iteration to the summingblock 112. In this manner, the integral output switch 118 clamps ontothe new indication of the expected response each time a new value flagis communicated from the stack 80, but does not allow any newlycalculated indication of the expected response produced by the filter116 to reach the summing block 112 if a new value flag is not present.

Thus, as will be understood, the use of the block 118 enables thecontinuously updated filter 116 to continue to model the expectedprocess response regardless of whether a new measurement value iscommunicated. If the control output changes as a result of a setpointchange or a feed-forward action based on a measured disturbance,irrespective of the presence of a new value flag, the continuouslyupdated filter 116 correctly reflects the expected process response bycalculating a new indication of an expected response at each controlroutine iteration. However, the new indication of the expected response(i.e. the reset contribution or integration component) will only beincorporated into the controller calculations when a new value flag iscommunicated (via the integral output switch 118).

Thus, generally speaking, the control routine 100 of FIG. 5 produces anexpected process response by basing its calculations on thenon-periodic, delayed or asynchronous measurement values received at thecommunications stack 80 while, in addition, determining the expectedresponse between the receipt of two measurement values to account forchanges caused by a change in the setpoint or any measured disturbanceused as a feed-forward input to the controller 100. As such, the controltechnique described above is able to accommodate for setpoint changes,feed-forward action on measured disturbances, etc., that may affect theexpected process response and thus provide a more robust controlresponse in the presence of communication delays associated with thecommunication of both the control signal to the actuator 102 and thereceipt of feedback or measured process variable signals at thecontroller 100.

Moreover, as indicated in FIG. 5, the communications stack 80 providesthe most recently received feedback signal to the summer 108 for use incalculating the error signal at the output of the summer 108. As alsoillustrated in FIG. 5, the new value flag produced by the communicationsstack 80 is also provided to the derivative calculation unit 132 and maybe used to indicate when the derivative calculation unit shouldrecalculate or operate to produce the derivative control component. Forexample, the derivative contribution block 132 may be restructured to bebased on the elapsed time since the last measurement update. In thismanner, a spike in the derivative contribution (and the resultant outputsignal) is avoided.

More particularly, to accommodate unreliable or delayed transmissions inthe feedback communications path, and, more generally, theunavailability of measurement updates, the derivative contribution maybe maintained at the last determined value until a measurement update isreceived, as indicated by the new value flag from the communicationsstack 80. This technique allows the control routine to continue withperiodic execution according to the normal or established execution rateof the control routine. Upon reception of the updated measurement, thederivative block 132, as illustrated in FIG. 5, may determine thederivative contribution in accordance with the following equation:

$O_{D} = {K_{D} \cdot \frac{e_{N} - e_{N - 1}}{\Delta \; T}}$

-   -   where e_(N)=Current error    -   e_(N-1)=Last error    -   ΔT=Elapsed time since a new value was communicated    -   O_(D)=Controller derivative term    -   K_(D)=Derivative gain factor

With this technique for determining the derivative contribution, themeasurement updates for the process variable (i.e., control input) canbe lost for one or more execution periods without the production ofoutput spikes. When the communication is reestablished, the term(e_(N)-e_(N-1)) in the derivative contribution equation may generate thesame value as that generated in the standard calculation of thederivative contribution. However, for a standard PID technique, thedivisor in determining the derivative contribution is the executionperiod. In contrast, the control technique described herein utilizes theelapsed time between two successfully received measurements. With anelapsed time greater than the execution period, the control techniqueproduces a smaller derivative contribution, and reduced spiking, than astandard PID technique.

To facilitate the determination of the elapsed time, the communicationsstack 80 may provide the new value flag described above to thederivative block 132 as shown in FIG. 5 along with the elapsed timebetween the two most recently received values. Moreover, the processmeasurement may be used in place of the error in the calculation of theproportional or derivative component. More generally, the communicationstack 80 may include or incorporate any software, hardware or firmware(or any combination thereof) to implement a communications interfacewith the process 101, including any field devices within the process101, process control elements external to the controller, etc.

As a further example, FIG. 6 illustrates a process control system 600that is similar in nature to those described above with respect to FIGS.4 and 5, in that it implements a control communication block 135 asdescribed above, but does so in a control system configuration thatincludes wired communication paths (or other synchronous, periodic ornon-delayed communication paths) between the controller 100 and theactuator 102 and between the transmitter 106 and the controller 100. Inthe system of FIG. 6, the continuously updated filter 116 may bedirectly connected to receive the implied actuator value and may beconnected to provide its output directly to the summer 112. Moreover,the process variable measurement from the transmitter 106 may bedirectly connected to the summer 108. Here, the control communicationsblock 135 may be provided to reduce the number of controller updates(control signals) sent to the actuator 102 to reduce actuator moves.Thus, as illustrated in FIG. 6, the control communications block 135 mayoperate in the manner described above in a wired or non-delayedcommunications network to reduce the “hunting” phenomena seen in manysituations, and/or to reduce other excessive movements of the actuator102, even when in the presence of synchronized, periodic or non-delayedcontrol and feedback communications. In still another case notillustrated in the figures, the control communication block 135 may beused in a situation in which wireless communications (and thuspotentially slow, unsynchronized, delayed or non-periodiccommunications) are provided between a transmitter or sensor and thecontroller and wired (or synchronous, periodic or non-delayed)communications are provided between the controller and the actuator in acontrol loop.

Additionally, while the control communications block 135 is illustratedas being within the controller block 100, the control communicationsblock 135 (or the functionality associated therewith) could beimplemented at any point between the controller output and thecontrolled device receiving the non-periodic controller output asproduced by the block 135. For example, the block 135 may beincorporated into the control loop or at any point along the controlsignal path after the PID output is calculated and before this signal isreceived at the actuator or other controlled device. For example, thenon-periodic control communications of the block 135 could beincorporated into an output block that follows the PID controller, in agateway device, or in any other device disposed within the controlsignal communication path between the controller and the actuator beingcontrolled. If desired, this functionality could be even implemented inthe actuator itself.

A key to utilizing the non-periodic control communications block 135 asdescribed herein is that the PID reset calculation is implemented usinga positive feedback network that is based on the implied valve positionthat is, in turn, communicated to the controller from the actuatorpreferably with minimal delay. Ideally the feedback of the implied valveposition (i.e., the target position that the valve actuator accepted andis working to achieve) would be communicated by the wireless actuatorback to the wireless gateway in the response to a target position writerequest. Such a system is illustrated in FIG. 7. In particular, asillustrated in FIG. 7, during operation, the control communication block135 sends a write request including a new control target to the wirelessactuator 102 via a wireless path (e.g., a delayed or asynchronouscommunication link), as illustrated by the dashed line 200 a.Thereafter, when the wireless actuator 102 receives the new controlsignal or target, the wireless actuator 102 responds to the block 135(via a wireless link as illustrated by the dashed line 200 b) with awrite response indicating that the actuator 102 has received the controlsignal. The write response is essentially an acknowledgement of thereceipt of the control signal. Moreover, the write response (to thewrite request) may reflect the accepted control or target value. Uponreceipt of the write response, the block 135 may change the impliedactuator position to the position indicated by the control signal whichwas sent in the write request or by the accepted target value indicatedin the write response. The control block 135 may thus be involved insending the implied actuator position to the filter 116 of FIGS. 4-6 foruse as the implied actuator position. Of course, the write request orthe acknowledgement in the form of a write response may be implementedusing any devices within the communication link between the controllerand the actuator, such as a gateway device (e.g., the gateway 73 of FIG.3).

In some implementations of wireless communications, there may be asignificant delay between the actuator 102 receiving a command to changetarget position and the actuator response being communicated back to andbeing accessible by the controller (or the block 135). In this case, thecontroller is limited by the operation of the block 135 from sending anew control signal until after receipt of the acknowledgment from theactuator. To enable the controller 100 to automatically compensate forthis significant and variable delay in the wireless communications ofthe write response, a new control signal data format may be used tosupport control using a wireless actuator, such as a wireless valveactuator.

In particular, a time-to-apply field may be added to the control signalwhen sending the control output value to the wireless actuator. Thisfield may specify a time in the future when the output value should takeeffect or should be put into effect by the actuator. Preferably, thedelay time should be set so that both the output communication to theactuator and the readback communication to the controller are completedbefore this future time. In other words, the time in the future at whichthe actuator is to implement the change to effect movement to thecontrol signal target value will preferably be a time equal to orgreater than the expected delay introduced into the communications byone or both of the communication of a new control signal by the block135 to the actuator and/or the communication of the acknowledgement orwrite response from the actuator to the block 135 or to the controller100. Using this command, however, makes it possible to preciselycalculate the implied actuator position based on the target positioncommunicated to the actuator and the time specified when the actuatorshould take action on the new target position. For example if the timespecified in the output is always a fixed number of seconds, Y, in thefuture, then the implied actuator (or valve) position can be calculatedin the controller 100, the gateway, etc., simply by delaying the targetposition by Y seconds. Thus, the calculated implied actuator positionwill match the target value used in the actuator as long as the delaytime specified in the new command is equal to or longer than the timerequired to communicate a new target position to the actuator (andpossibly to receive the acknowledgement of the receipt of that targetfrom the actuator). To insure that the calculated implied actuatorposition accurately reflects the target position in the actuator, a newoutput can be issued to the actuator only if confirmation of lastcommunication has been received.

Thus, generally speaking, the new command may contain one or more newtarget value(s) and the time(s) at which the actuator or valve shouldtake action on the new request. In this case, when the valve or actuatorreceives a new request, it waits until the scheduled time to take actionon the new target value(s). However, when the valve or actuator receivesa new command, it immediately makes an effort to send a response thatcontains an acknowledgement and/or that contains the new target value(s)(to thereby confirm receipt and to produce a new implied actuatorposition) even before the valve takes action on the new target value(s).This command reduces or alleviates the problems associated with theblock 135 (or the controller using the filter 116) receivingsignificantly delayed implied actuator position values, and thusprovides for better control in these circumstances. In fact, to minimizethe impact of this communication delay, it is proposed that such a newcommand be used when performing control with a wireless valve, and thatthe implied actuator position used in the feedback loop of thecontroller be based on the target value sent to the valve, delayed bythe time between the time for action in the command and the time atwhich the new target value was buffered to be sent to the valve. Theexternal reset value used in the controller could thus be calculated inthe communications layer or in the control module and could be providedas the “implied valve position” for use as the PID external reset value(e.g., as the input to the filter 116). In either case, however, it isdesirable to wait to issue a new control command until a confirmation isreceived from the valve that the valve or actuator has received theprevious command sent to the valve.

Of course, the time value used in this command can be based on the timeat which the new target value was accepted at the block 135 plus apreconfigured delay time. The delay time may be set by, for example, auser, a configuration engineer, a manufacturer, etc., or may be based ona statistical property of the communication link (e.g., an averagedelay, a median delay, a maximum delay measured or observed within thecommunications link over a particular period of time, one more standarddeviations of the expected delay based on numerous delay measurements,etc.)

As an example of the operation of such a command, FIG. 8 illustrates atiming diagram 800 of various signals involved in a communicationprocedure in which an AO output block is processed to produce a controlsignal with a new target value, the new target value is communicated toa valve (or actuator) and is then acted on by the valve or actuator. Inthe example of FIG. 8, a line 801 represents the control signaldeveloped by the control routine and provided as an input to the controlcommunication block 135. A line 802 represents the generation of thetarget output or output control signal provided by the controlcommunication block 135 to the actuator. A line 804 represents thereceipt of the new target value at the actuator and may correspond tothe sending of an acknowledgement receipt of the target value by theactuator (valve) back to the controller. A line 806 represents thetiming of the operation of the actuator or valve in response to thecontrol signal and illustrates a delay time of the control signal asbeing greater than the time it took to for a change in the target valuein the line 802 to reach the actuator. The last line 808 represents thelatest valve reply as received by the block 135. Note that the block135, due to the operation explained above, will not issue a new controlsignal or a changed control signal until it receives a write responseindicating the that the actuator (valve) received the previous controlsignal, which is why the changes in the line 808 correspond in time (ornearly in time) to the changes in the issuance of a new control signalfrom the block 135 (indicated by the line 802).

In any event, the use of this delay time as part of the control signalenables the controller to change the implied actuator position used inthe feedback calculations (e.g., in the filter 116 described above) atthe same time or at nearly the same time that the actuator actually actson a control signal to move toward a new target value, even in thepresence of significant communication delays between the controller andthe actuator. This operation more closely synchronizes the controlfeedback calculations with the actual operation of the valve, andthereby provides for better or more robust control operation.

Table I below provides a definition of an example WirelessHART customcommand defined for a wireless position monitor that implements thisdelay time concept. The command illustrated in Table I writes an outputvalue or values (defined in bytes 3 and 4 for one or more parametersidentified in bytes 0 and 1) to the monitor (e.g., actuator), andincludes a time-to-apply field (in bytes 6-13). The time-to-apply fieldmay indicate an offset or a delay time from some specified timestamp(e.g., the timestamp associated with sending of the control signal fromthe block 135), an absolute time as determined by a system clock thatmay be synchronized across different devices within the process controlcommunications network, an offset time from a system clock, etc.Moreover, if desired, the new command may send multiple control signalsto apply simultaneously or in sequence at different offset times or atthe same offset times. The number of commands may be provided in, forexample, the second byte as indicated in Table I.

TABLE I HART Command Definition Cmd Byte Format Description 64387 0-1Unsigned-16 Index of first Discrete Variable to Write (1) 2 Unsigned-8Number of Discrete Variables to write (1) 3-4 Unsigned-16 First DiscreteVariable Value (5- Open, 6-Closed) 5 Bits-8 First Discrete VariableStatus (Don't care)  6-13 Unsigned-64 Time-to-apply in UTC (ms)

In any event, using this data format for valve or other actuator controlresults in or is equivalent to having a zero readback or acknowledgementdelay, as long as the control system and the wireless network have acommon sense or measurement of time for this command, and the delay timespecified in the command is greater than the one-way or round trip delayof the write request and the write response.

Two sets of tests were performed to demonstrate the functionality of thecontrol and communication system described herein. The first set oftests was conducted assuming minimal response (acknowledgement) delayand the second set of tests was conducted to include significantresponse delay, which was mitigated using the time-to-apply concept aspart of the control signal, as described above. Each of the testsdescribed herein was performed using a simulated process control system.

In the set of tests using minimal response delay, a total of eight testswere conducted to demonstrate that PID control using non-periodiccommunications to a wireless valve is an effective means for reducingthe number of communications to the valve. A simulation of the control,communication and process response was created to allow the performanceof a control system with non-periodic control communications being sentto a wireless valve to be compared to a traditional PID control systemusing a wired valve. In these tests, a significant delay was included incommunications from the controller to the valve, but confirmation thatthe valve received the message was received with minimal delay. Theprocess gain and dynamics and PID tuning were identical for these eighttests and was used as follows.

Process PID Tuning Gain = 1 GAIN = 1 Time Constant = 6 sec RESET = 8sec/repeat DT = 2 sec RATE = 0

The same setpoint changes (10%) and unmeasured load disturbances changes(10%) were introduced in each of these tests. The test conditions aresummarized in Table II.

TABLE II Wireless Valve Non-periodic Communication Max Test DeadbandPeriod Default Change Measurement 1 3%  2 sec  8 sec Wired 2 3% 10 sec30 sec Wired 3 1%  2 sec  8 sec Wired 4 1% 10 sec 30 sec Wired 5 1%  2sec  8 sec 1.5% Wired 6 1% 10 sec 30 sec 1.5% Wired 7 1%  2 sec  8 secWireless 8 1% 10 sec 30 sec Wireless

The results of these tests are summarized in Table III.

TABLE III Number of New Integral Absolute Total Valve Target ValuesError (IAE) Travel (%) Wireless Wired Wireless Wired Wireless Wired TestValve Valve Valve Valve Valve Valve 1 25 363 416 332 41.4 51.1 2 8 353553 328 39.7 51 3 25 266 345 317 47 50.7 4 10 401 581 333 40.1 51.2 5 41353 509 330 42.7 51.1 6 22 713 1179 339 39.8 51.3 *7 30 369 463 333 46.451.1 *8 13 594 763 339 40.7 51.3 *Wireless transmitter used withwireless valve

Using the proposed changes in the PID (i.e., with the reset calculationbeing based on the implied valve position communicated by the wirelessvalve and with the use of non-periodic communications to the wirelessvalve), the number of communications to the valve was greatly reduced,as indicated in Table III. In most cases the control performance wasstill acceptable. The response during test 4 is illustrated in a graph900 of FIG. 9, and is typical of that seen during these tests. Inparticular, the first set of lines in the graph 900 indicate thesetpoint value 901, the measured controlled variable obtained using awireless valve 902 (with the control and communication proceduresdescribed herein), and the measured controlled variable obtained using awired valve 903 (and a typical PID control routine). The second set oflines indicates the valve movements or valve position for the wirelessvalve 910 (using the control and communication procedures describedherein) and the valve position for the wired valve 911 (using a typicalPID control routine). The bottom line 915 is an unmeasured disturbanceintroduced for simulation purposes. As such, the graph 900 indicates thecomparative performance of the process control loop using the controland communication procedures described herein for test 4 in response toboth setpoint changes and unmeasured disturbances in the process.

Moreover, as a further test, the control and communications simulationsperformed in some of the tests described above were modified to utilizethe new control signal data format that allows for significantcommunication delays between the controller and the valve andsignificant delays in the communication of the valve response oracknowledgement. Tests 9-12 were performed using this modifiedsimulation which included significant communication delays in thefeedback path between the actuator and the controller. The same processgain and dynamics and controller tuning as were used in the previoustests were used for these additional tests.

In the tests 9 and 10, a wired measurement and a wireless valve arecompared to a wired measurement and a wired valve. In tests 11 and 12 awireless measurement with the wireless valve are compared to a wiredmeasurement and a wired valve. During these tests identical changes insetpoint and unmeasured disturbances were introduced into both controlloops. The setup of the non-periodic communication to minimize valvemovement, the communication delay to the valve and the communicationdelay in the valve response are shown in the Table IV.

TABLE IV Minimize Valve Movement Communications Default Command ReplyTest Deadband Period Time Delay Delay 9 3% 6 sec 12 sec 3 sec 3 sec 103% 6 sec 12 sec 6 sec 6 sec 11 3% 6 sec 12 sec 3 sec 3 sec 12 3% 6 sec12 sec 6 sec 6 sec

The results achieved for wireless control using the modifications forthe wireless valve versus a wired transmitter and valve using typicalPID control are summarized in Table V.

TABLE V Wired Valve Wireless Valve Target Total Target Total TestChanges Travel IAE Changes Travel IAE 9 323 51 327 14 40 681 10 356 51332 14 42 739 11 397 51 335 17 40 834 12 389 51 334 16 47 929

The test results illustrate that it is possible to minimize the impactof communication delay by using the proposed new output data signalformat in conjunction with the calculated implied valve position for theexternal reset. Stable control was observed for changes in setpoint andload disturbances using the wireless valve. The number of changes invalve target were reduced by a factor of 23 times. The response duringtest 10 is illustrated in a graph 1000 of FIG. 10, and is typical ofthat seen during these tests. The first set of lines in the graph 1000indicate the setpoint value 1001, the measured controlled variable usinga wireless valve 1002 (with the control and communication proceduredescribed herein), and the controlled variable using a wired valve 1003(and a typical PID control routine). The second set of lines indicatesthe valve movements or valve position for the wireless valve 1010 (withthe control and communication procedure described herein) and the valveposition for the wired valve 1011 (using a typical PID control routine).The bottom line 1015 is an unmeasured disturbance. As such, the graph1000 indicates the comparative performance of the process control loopusing the control and communication procedures described herein for test10 in response to both setpoint changes and unmeasured disturbances inthe process.

As another experiment, a WirelessHART network was simulated using aWirelessHART module in a lab setting to act as both a sensor and anactuator. A simulated process was run inside the module to relate thevalues of the sensor and the actuator. Because an actual wirelessnetwork was used, it is believed that the experiment closely representsreal world applications.

To better understand this experiment, the relevant components of the DCS(distributed control system) with a WirelessHART network and themodifications that were made thereto to perform the experiment will bedescribed. In particular, the test DCS included a WirelessHART networkthat used all WirelessHART devices that were input devices. The devicespublished data to the gateway, which cached the data and forwarded thedata to the host upon request. In the DCS system used, the componenttalking to the gateway was called a PIO. The control modules, includingthe PID, talked to the PIO. The gateway responded to any other requestsfrom the PIO immediately with a Delayed Response (DR) status whenever itcould not send a requested response. The gateway then forwarded therequest to the controlled device within the WirelessHART network. Thus,the PIO had to ask the gateway repeatedly, and get a DR repeatedly,until the response from the controlled device was received by thegateway, which then finally replied without a DR signal. This mechanismapplied to the output writes to the actuator. However, it could happenthat a future WirelessHART standard will allow unacknowledged requestfrom the PIO to the device, i.e., downstream publishing.

The control communication component, similar to that described above forthe block 135, was implemented in the PIO in this experiment.Additionally, the HART write command was used to write an output to thevalve using the time-to-apply concept described above. The target valveposition maintained by the wireless valve was thus changed using theHART command with a delayed or time-to-apply component. If the targetvalve position specified in the command was a different value than thatcontained in the previous change request issued to the gateway, thenthis command was considered to be a new request. If the gateway hadpreviously received a wireless valve response to the last requestedchange in position, then the gateway acted on the new change request.Otherwise the new change request was buffered by the gateway. To insurethat the latest PID output was used and communicated to the valve withminimal delay, the non-periodic communications implemented by thecontroller (the PIO block) were designed to observe the followingconditions:

-   -   (1) The PID block executed much faster than the time required        for the gateway to communicate a new target value to the valve        and to receive a response.    -   (2) Each time the PID executed (once per second or faster), a        change request command was sent to the PIO. However, if the same        command (same target value) was sent to the PIO, then the        associated valve response was returned. The associated target        value was reflected in the AO block READ_BACK parameter.    -   (3) If a status of the AO block READ_BACK parameter changed to        Bad Communication Failure, then the same change request was        continued to be transmitted to the gateway and was considered to        be a new command.

A communication diagram illustrating a change in the PID output afterapplication of the non-periodic control communication block in thisexperiment is illustrated in the Table VI.

TABLE VI Controller AO/ AO/ Wireless Step READBACK OUT PIO Gateway Valve1 40 GoodNC 40 <=Reply 40 2 40 GoodNC 50 Write 50=> 3 40 GoodNC 50<=Reply DR 4 40 GoodNC 50 Write 50=> 5 40 GoodNC 50 <=Reply DR 6 40GoodNC 50 Write Cmd=> 7 40 GoodNC 50 Write 50=> 8 50 GoodNC 50 <=ReplyDR 9 50 GoodNC 50 <=Reply 50 10 50 GoodNC 50 Write 50=> 11 50 GoodNC 50<=Reply 50 12 50 GoodNC 52 Write 52=> 13 50 GoodNC 52 <=Reply DR

As illustrated in Table VI, at step 2, a new change request was issuedby the controller AO/Out block and by the PIO to change the valve targetto 50. The immediate response of the gateway was to reply with a DR(delayed response) signal. One second later, at step 4, the same changerequest was again issued to the gateway. The gateway then issued theHART command to the valve (to change the valve target at the valve) atstep 6, but did not receive a reply (write response) until step 9.However, at step 8, after the delay time provided in the originalcontrol command to the valve, the change request was reflected in theAO/READBACK value to be used in the PID positive feedback network of thecontroller as the implied valve position. At step 11 (in response to thecontrol command being re-issued at the step 10), the target valveposition returned by the valve to the gateway (at step 9) was returnedto the PIO. Thereafter, a new change in the PID output was issued by thePIO at step 12, all as shown in Table VI.

If, as a hypothetical, the communication from the gateway to the valvewas lost following step 6, then, after a period of time, the loss ofvalve response would have been detected by the gateway and this failurewould have been indicated in the response to the next controller writerequest. This failure would have then been indicated by the AO/READBACKstatus changing to Bad Communications. The next controller write afterthe detection of a communication would have then been treated as a newwrite request. However, the AO/READBACK would have continued to show astatus of Bad Com until a response from the valve was received inresponse to the repeated change request.

In a general sense controller or PID modifications discussed above forcontrol using a wireless valve may also be applied in a PID controllerusing a wired valve, so as to minimize valve wear by reducing thefrequency of changes in the target valve position. To address suchapplications, the non-periodic communication function may beincorporated into the PID or IO function blocks, and the implied valveposition may be based on the control signal value output to the valve.Moreover, the criteria that are used to determine if the calculated PIDoutput should be communicated to the wireless valve could also includeor consider the rate at which the calculated controller output ischanging. In some cases this feature would allow faster reaction ofunmeasured process disturbances. Still further, as part of thenon-periodic control communication functions described herein, filteringcould be applied to the calculated control output before applying thecontrol communications criteria discussed herein to determine if a newcontrol value should be communicated. Likewise, a metric that shows thenumber of changes in valve position and total valve travel may beincorporated into the control system, such as into a wireless gateway, awireless valve, etc., to determine the effectiveness of the non-periodiccontrol communications in reducing the frequency of changes in thetarget valve position.

As a general matter, practice of the control techniques described hereinare not limited to use with single-input, single-output PID controlroutines (including P, PI and PD routines), but rather may be applied ina number of different multiple-input and/or multiple-output controlschemes, cascaded control schemes or other control schemes. Moregenerally, the control techniques described herein may also be appliedin the context of any closed-loop model-based control routine (such as amodel predictive control routine) involving the use or generation of oneor more process output variables, one or more process input variables orother control signals,

The term “field device” is used herein in a broad sense to include anumber of devices or combinations of devices (i.e., devices providingmultiple functions, such as a transmitter/actuator hybrid), as well asany other device(s) that perform(s) a function in a control system. Inany event, field devices may include, for example, input devices (e.g.,devices such as sensors and instruments that provide status, measurementor other signals that are indicative of process control parameters suchas, for example, temperature, pressure, flow rate, etc.), as well ascontrol operators or actuators that perform actions in response tocommands received from controllers and/or other field devices such asvalves, switches, flow control devices, etc.

It should be noted that any control routines or modules described hereinmay have parts thereof implemented or executed in a distributed fashionacross multiple devices. As a result, a control routine or module mayhave portions implemented by different controllers, field devices (e.g.,smart field devices) or other devices or control elements, if sodesired. Likewise, the control routines or modules described herein tobe implemented within a process control system may take any form,including software, firmware, hardware, etc. Any device or elementinvolved in providing such functionality may be generally referred toherein as a “control element,” regardless of whether the software,firmware, or hardware associated therewith is disposed in a controller,field device, or any other device (or collection of devices) within theprocess control system. A control module, routine or block may be anypart or portion of a process control system including, for example, aroutine, a block or any element thereof, stored on any computer readablemedium to be executed on a processor. Such control modules, controlroutines or any portions thereof (e.g., a block) may be implemented orexecuted by any element or device of the process control system,referred to herein generally as a control element. Control routines,which may be modules or any part of a control procedure such as asubroutine, parts of a subroutine (such as lines of code), etc., may beimplemented in any desired software format, such as using objectoriented programming, using ladder logic, sequential function charts,function block diagrams, or using any other software programminglanguage or design paradigm. Likewise, the control routines may behard-coded into, for example, one or more EPROMs, EEPROMs, applicationspecific integrated circuits (ASICs), or any other hardware or firmwareelements. Still further, the control routines may be designed using anydesign tools, including graphical design tools or any other type ofsoftware/hardware/firmware programming or design tools. Thus, thecontrollers 11 described herein may be configured to implement a controlstrategy or control routine in any desired manner.

Alternatively or additionally, function blocks may be stored in andimplemented by the field devices themselves, or in other controlelements of a process control system, which may be the case with systemsutilizing Fieldbus devices. While the description of the control systemsare generally provided herein using a function block control strategy,the control techniques and system may also be implemented or designedusing other conventions, such as ladder logic, sequential functioncharts, etc., or using any other desired programming language orparadigm.

When implemented, any of the software described herein may be stored inany computer readable memory such as on a magnetic disk, a laser disk,or other storage medium, in a RAM or ROM of a computer or processor, aflash memory, etc Likewise, this software may be delivered to a user, aprocess plant or an operator workstation using any known or desireddelivery method including, for example, on a computer readable disk orother transportable computer storage mechanism or over a communicationchannel such as a telephone line, the Internet, the World Wide Web, anyother local area network or wide area network, etc. Furthermore, thissoftware may be provided directly without modulation or encryption ormay be modulated and/or encrypted using any suitable modulation carrierwave and/or encryption technique before being transmitted over acommunication channel.

Thus, while the present invention has been described with reference tospecific examples, which are intended to be illustrative only and not tobe limiting of the invention, it will be apparent to those of ordinaryskill in the art that changes, additions or deletions may be made to thecontrol techniques described herein without departing from the spiritand scope of the invention.

1. A method of controlling a controlled device within a process using acontrol signal, comprising: implementing, on a process controllercomputing device, multiple iterations of a control routine to generate,during each of the multiple iterations, a control signal value forcontrolling the controlled device; and implementing a communicationsroutine within a computer processing device coupled to the processcontroller computing device including, during each of a multiplicity ofiterations of the control routine, determining if a minimumpredetermined communication time period has passed, and determining ifan acknowledgement has been received from the controlled deviceindicating that the controlled device has received the previous controlsignal; and, at least when the minimum predetermined communication timeperiod has passed and an acknowledgement has been received from thecontrolled device indicating that the controlled device has received theprevious control signal, determining if a further signaling condition ismet; and sending a new control signal to the controlled device via acommunications link only when the minimum predetermined communicationtime period has passed and an acknowledgement has been received from thecontrolled device indicating that the controlled device has received theprevious control signal and when the further signaling condition is met.2. The method of claim 1, wherein determining if the further signalingcondition is met includes determining if the difference between thecontrol signal value generated for a control routine iteration and thevalue of the previous control signal sent to controlled device isgreater than a threshold value.
 3. The method of claim 1, whereindetermining if the further signaling condition is met includesdetermining if the time since the previous control signal was sent tothe controlled device exceeds a maximum threshold time value.
 4. Themethod of claim 1, wherein determining if the further signalingcondition is met includes determining if either the difference betweenthe control signal value generated for a control routine iteration andthe value of the previous control signal sent to controlled device isgreater than a threshold value or the time since the previous controlsignal was sent to the controlled device exceeds a maximum thresholdtime value.
 5. The method of claim 1, wherein implementing thecommunications routine within a computer processing device coupled tothe process controller computing device includes implementing thecommunications routine during each of a multiplicity of consecutiveiterations of the control routine.
 6. The method of claim 1, whereinsending a new control signal to the controlled device via acommunications link includes determining if the difference between thecontrol signal value for the control routine iteration and the value ofthe previous control signal sent to controlled device is greater than amaximum change threshold value and sending the new control signal as alimited version of the control signal value for the control routineiteration when the difference between the control signal value for thecontrol routine iteration and the value of the previous control signalsent to controlled device is greater than the maximum change thresholdvalue.
 7. The method of claim 1, wherein sending the new control signalto the controlled device via a communications link includes sending thenew control signal to the controlled device via a wirelesscommunications link.
 8. The method of claim 1, wherein sending the newcontrol signal to the controlled device via a communications linkincludes sending the new control signal to the controlled device via awired communications link.
 9. The method of claim 1, wherein sending thenew control signal to the controlled device via a communications linkincludes sending the new control signal as a new control signal valueand a time to implement the new control signal value at the controlleddevice.
 10. The method of claim 9, wherein sending the time to implementthe new control signal value includes sending the time as an offsettime.
 11. The method of claim 9, wherein sending the time to implementthe new control signal value includes sending the time as an absolutetime.
 12. The method of claim 1, wherein implementing, on a processcontroller computing device, multiple iterations of a control routineincludes implementing a proportional, integral, derivative type controlroutine.
 13. The method of claim 12, wherein implementing theproportional, integral, derivative type control routine includes using afeedback signal indicative of an attribute of the controlled device togenerate the control signal value.
 14. The method of claim 13, whereinsending the new control signal to the controlled device via acommunications link includes sending a new control signal value and apredetermined time to implement the new control signal value at thecontrolled device and wherein using the feedback signal includesassuming that the controlled device implemented the new control signalvalue at the predetermined time to implement the new control signalvalue to determine the feedback signal.
 15. The method of claim 13,further including receiving the feedback signal via a wirelesscommunication link.
 16. The method of claim 13, further includingreceiving the feedback signal via a wired communication link.
 17. Aprocess control system for use in controlling a controlled device withina process using a control signal, comprising: a process controller thatstores a control routine and that implements the control routine duringmultiple iterations to generate, during each of the multiple iterations,a control signal value for controlling the controlled device; and acommunications routine, implemented within a computer processing devicethat is coupled to the process controller, wherein the communicationsroutine receives the generated control signal value for each of themultiple iterations of the control routine and executes to: determine ifa minimum predetermined communication time period has passed, anddetermine if an acknowledgement has been received from the controlleddevice indicating that the controlled device has received the previouscontrol signal; and, further executes to determine if a furthersignaling condition is met at least when the minimum predeterminedcommunication time period has passed and an acknowledgement has beenreceived from the controlled device indicating that the controlleddevice has received the previous control signal; and sends a new controlsignal to the controlled device via a communications link only when theminimum predetermined communication time period has passed and anacknowledgement has been received from the controlled device indicatingthat the controlled device has received the previous control signal andwhen the further signaling condition is met.
 18. The process controlsystem of claim 17, wherein the communications routine determines if thefurther signaling condition is met by determining if the differencebetween the control signal value generated for the control routineiteration and the value of the previous control signal sent tocontrolled device is greater than a threshold value.
 19. The processcontrol system of claim 17, wherein the communications routinedetermines if the further signaling condition is met by determining ifthe time since the previous control signal was sent to the controlleddevice exceeds a maximum threshold time value.
 20. The process controlsystem of claim 17, wherein the communications routine determines if thefurther signaling condition is met by determining if either thedifference between the control signal value generated for the controlroutine iteration and the value of the previous control signal sent tocontrolled device is greater than a threshold value or the time sincethe previous control signal was sent to the controlled device exceeds amaximum threshold time value.
 21. The process control system of claim17, wherein the communications routine is implemented with a computerprocessing device within the process controller.
 22. The process controlsystem of claim 17, wherein the communications routine determines if thedifference between the control signal value for the control routineiteration and the value of the previous control signal sent tocontrolled device is greater than a maximum change threshold value andgenerates the new control signal as a limited version of the controlsignal value for the control routine iteration when the differencebetween the control signal value for the control routine iteration andthe value of the previous control signal sent to controlled device isgreater than the maximum change threshold value.
 23. The process controlsystem of claim 17, wherein communications routine sends the new controlsignal to the controlled device as a wireless communications signal. 24.The process control system of claim 17, wherein the communicationsroutine generates the new control signal as including a new controlsignal value and a time to implement the new control signal value at thecontrolled device.
 25. The process control system of claim 24, whereinthe time to implement the new control signal value is an offset time.26. The process control system of claim 24, wherein the time toimplement the new control signal value is an absolute time.
 27. Theprocess control system of claim 24, wherein the control routine uses afeedback signal indicative of an attribute of the controlled device togenerate the control signal value and the control routine assumes thatthe controlled device implemented the new control signal value at thepredetermined time to determine the feedback signal when generating thecontrol signal for at least one control routine iteration.
 28. Theprocess control system of claim 17, wherein the control routine is aproportional, integral, derivative type control routine.
 29. The processcontrol system of claim 17, wherein the control routine is aproportional, integral derivative (PID) type of control routine andwherein the process controller receives a feedback signal via a wirelesscommunications link that is used as a feedback signal in the PID type ofcontrol routine.
 30. A process control system for controlling a process,comprising: a process controller including one or more processors, amemory, and a communications interface; a communications link; and acontrolled device disposed within the process and communicativelycoupled to the process controller via the communications link; whereinthe process controller includes a control routine stored on the memorythat executes on the one or more processors during each of amultiplicity of iterations to generate a control signal value for use incontrolling the controlled device, and wherein the communicationsinterface includes an interface routine stored on the memory thatexecutes on the one or more processors to; (1) determine if a minimumpredetermined time period has passed since sending a previous controlsignal to the controlled device, (2) determine if an acknowledgement hasbeen received from the controlled device indicating that the controlleddevice has received the previous control signal; and (3) determine if afurther signaling condition is met; and wherein the interface routinesends a new control signal to the controlled device via thecommunications link based on the control signal value generated by thecontrol routine during an iteration when (1) the minimum predeterminedtime period has passed since sending a previous control signal to thecontrolled device, and (2) an acknowledgement has been received from thecontrolled device indicating that the controlled device has received theprevious control signal and (3) the further signaling condition is met,and does not send a new control signal to the controlled device via thecommunications link based on the control signal value generated by thecontrol routine during an iteration when (1) the minimum predeterminedtime period has not passed since sending a previous control signal tothe controlled device, or (2) an acknowledgement has not been receivedfrom the controlled device indicating that the controlled device hasreceived the previous control signal, or (3) the further signalingcondition is not met.
 31. The process control system of claim 30,wherein the interface routine determines that the further signalingcondition is met if the difference between the control signal valuegenerated for the control routine iteration and the value of theprevious control signal sent to controlled device is greater than athreshold value.
 32. The process control system of claim 30, wherein theinterface routine determines that the further signaling condition is metif the time since the previous control signal was sent to the controlleddevice exceeds a maximum threshold time value.
 33. The process controlsystem of claim 30, wherein the interface routine determines that thefurther signaling condition is met if either the difference between thecontrol signal value generated for the control routine iteration and thevalue of the previous control signal sent to controlled device isgreater than a threshold value or the time since the previous controlsignal was sent to the controlled device exceeds a maximum thresholdtime value.
 34. The process control system of claim 33, wherein theinterface routine further determines if a difference between the controlsignal value for the control routine iteration and the value of theprevious control signal sent to controlled device is greater than amaximum change threshold value and creates the new control signal as alimited version of the control signal value for the control routineiteration when the difference between the control signal value for thecontrol routine iteration and the value of the previous control signalsent to controlled device is greater than the maximum change thresholdvalue.
 35. The process control system of claim 33, wherein thecommunications link is a wireless communications link.
 36. The processcontrol system of claim 33, wherein the communications link includes isa wired communications link.
 37. The process control system of claim 33,wherein the interface routine creates a new control signal as a signalincluding a target value and a time to implement the target value at thecontrolled device.
 38. The process control system of claim 37, whereinthe time to implement the target value is an offset time.
 39. Theprocess control system of claim 33, wherein the control routine is aproportional, integral, derivative (PID) type of control routine. 40.The process control system of claim 33, wherein the control routine usesa feedback signal indicative of an attribute of the controlled device togenerate the control signal value.
 41. The process control system ofclaim 40, wherein the control routine uses an additional feedback signalindicative of a measured process variable to generate the control signalvalue.
 42. The process control system of claim 33, wherein the interfaceroutine creates a new control signal as a signal including a targetvalue and a time to implement the target value at the controlled deviceand wherein the control routine uses an attribute of the controlleddevice to generate the control signal value, and wherein the controlroutine assumes that the controlled device implements the target valueat the time to implement the target value to determine the attribute ofthe controlled device.
 43. The process control system of claim 33,further including a sensor disposed within the process to measure aprocess variable, and a further communications link disposed between theprocess controller and the sensor, wherein the control routine uses theprocess variable measured by the sensor to determine the control signalvalue.
 44. The process control system of claim 43, wherein thecommunications link and the further communications link are bothwireless communications links.
 45. The process control system of claim43, wherein the communications link and the further communications linkare both wired communications links.
 46. The process control system ofclaim 43, wherein the communications link is a wired communications linkand the further communications link is a wireless communications link.47. The process control system of claim 43, wherein the communicationslink is a wireless communications link and the further communicationslink is a wired communications link.
 48. A process controller for use incontrolling a controlled device within a process, comprising: aprocessor; a memory; a process control routine stored on the memory thatexecutes on the processor during each of a multiplicity of iterations toproduce a control signal value for controlling the controlled devicewithin the process and wherein the process control routine comprises afeedback type of control routine that uses an attribute of thecontrolled device as a feedback variable to generate the control signalvalue; and a communications routine stored on the memory that executeson the processor during one or more of the multiplicity of iterations tosend a new control signal, based on the control signal value, to thecontrolled device, wherein the new control signal includes a targetvalue for the controlled device and a time to implement the targetvalue; wherein the process control routine determines the attribute ofthe controlled device as the feedback variable assuming that thecontrolled device implemented the target value at the time to implementthe target value during one or more of the multiplicity of iterations.49. The process controller of claim 48, wherein the process controlroutine determines the attribute of the controlled device as thefeedback variable assuming that the controlled device implemented thetarget value at the time to implement the target value prior toreceiving an indication of a measured attribute value of the controlleddevice from the controlled device.
 50. The process controller of claim48, wherein the process control routine comprises a proportional,integral, derivative type of control routine.
 51. The process controllerof claim 50, wherein the process control routine uses the feedbackvariable to determine a reset contribution to the control signal value.52. The process controller of claim 48, wherein the communicationsroutine sends the new control signal to the controlled device via awireless communications link.
 53. The process controller of claim 48,wherein the time to implement the target value is an offset time. 54.The process controller of claim 48, wherein the time to implement thetarget value is an absolute time.
 55. A method of controlling acontrolled device within a process using a control signal, comprising:implementing, on a process controller computing device, multipleiterations of a control routine to generate, during each of the multipleiterations, a control signal value for controlling the controlleddevice, further including using an attribute of the controlled device asa feedback variable to generate the control signal value during each ofthe multiple iterations of the control routine; generating a new controlsignal for one or more of the multiple iterations, wherein the newcontrol signal includes a target value for the controlled device and atime to implement the target value; and sending the new control signalover a communications link to the controlled device; and furtherincluding determining the attribute of the controlled device as thefeedback variable assuming that the controlled device implemented thetarget value at the time to implement the target value during one ormore of the multiple iterations of the control routine.
 56. The methodof claim 55, wherein determining the attribute of the controlled deviceas the feedback variable assuming that the controlled device implementedthe target value at the time to implement the target value includesdetermining the attribute of the controlled device as the feedbackvariable assuming that the controlled device implemented the targetvalue at the time to implement the target value in at least one of themultiple iterations prior to receiving an indication a measuredattribute value of the controlled device from the controlled device atthe process controller computing device.
 57. The method of claim 55,wherein implementing the control routine includes implementing aproportional, integral, derivative type of control routine.
 58. Themethod of claim 57, further including using the feedback variable todetermine a reset contribution to the control signal value.
 59. Themethod of claim 55, wherein sending the new control signal over acommunications link to the controlled device includes sending the newcontrol signal via a wireless communications link.
 60. The method ofclaim 55, wherein generating a new control signal includes generatingthe time to implement the target value as an offset time.
 61. The methodof claim 55, wherein generating a new control signal includes generatingthe time to implement the target value as an absolute time.